package exception;

import java.awt.*;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.sql.SQLException;

/**
 * 重写一个含有throws声明异常抛出的方法时，对throws的重写规则
 */
public class ThrowsDemo {
    public void doSome() throws IOException, AWTException {}
}

class SubClass extends ThrowsDemo{
    //和父类一样的异常
//    public void doSome()throws IOException,AWTException{}
    //允许不抛出任何异常
//    public void doSome() {}
    //允许抛出部分异常
//    public void doSome() throws IOException{}
    //允许抛出超类方法抛出异常的子类型异常
//    public void doSome() throws FileNotFoundException{}

    //不允许抛出额外异常(超类没有抛出且没有继承关系的异常)
//    public void doSome() throws SQLException {}
    //不允许抛出超类方法抛出异常的超类型异常
//    public void doSome() throws Exception{}

}

